#include "RealTimeData.h"
#include "includes.h"
#include <time.h>

void test_RealTimeData(void)
{
    RealTimeDataItemJson j;
    j.tm = 1722853572; // time((time_t*)0);
    j.ch = 2;
    j.stcd = "01608B0240";

    // RealTimeData rt;
    // std::cout << rt.to_inv_solar(j.values) << Json::class2jsonstring(j) << std::endl;
    // j.values.clear();
    // std::cout << rt.to_meter(j.values) << Json::class2jsonstring(j) << std::endl;
    // j.values.clear();
    // std::cout << rt.to_duanluqi(j.values) << Json::class2jsonstring(j) << std::endl;
    // j.values.clear();
    // std::cout << rt.to_pingan(j.values) << Json::class2jsonstring(j) << std::endl;
    // j.values.clear();
    // std::cout << rt.to_yu(j.values) << Json::class2jsonstring(j) << std::endl;
    // j.values.clear();
    // std::cout << rt.to_water(j.values) << Json::class2jsonstring(j) << std::endl;
    // j.values.clear();
    // std::cout << rt.to_ht(j.values) << Json::class2jsonstring(j) << std::endl;
    // j.values.clear();
    // std::cout << rt.to_od(j.values) << Json::class2jsonstring(j) << std::endl;
    // j.values.clear();
    // std::cout << rt.to_tc_hc(j.values) << Json::class2jsonstring(j) << std::endl;
    // j.values.clear();
    // std::cout << rt.to_ib(j.values) << Json::class2jsonstring(j) << std::endl
    //           << std::endl
    //           << std::endl;
    // j.values.clear();

    // // 数组类
    // rt.SMS_CHn_I[1].v = 123;
    // rt.GNSSn_N_T[1].v = 333;
    // rt.DAMn_S[2].v = 222;
    // rt.CAMn_OFF_TM[5].v = 555;
    // std::cout << rt.to_sms(2, j.values) << Json::class2jsonstring(j) << std::endl
    //           << std::endl;
    // j.values.clear();
    // std::cout << rt.to_gnss(3, j.values) << Json::class2jsonstring(j) << std::endl
    //           << std::endl;
    // j.values.clear();
    // std::cout << rt.to_dam(4, j.values) << Json::class2jsonstring(j) << std::endl
    //           << std::endl;
    // j.values.clear();
    // std::cout << rt.to_cam(8, j.values) << Json::class2jsonstring(j) << std::endl
    //           << std::endl;
    // j.values.clear();

    // RealTimeDataItem i, jj, k;
    // std::vector<RealTimeDataItem *> list = {&i, &jj, &k};
    // j.values = list;
    // std::string lstr = Json::class2jsonstring(list);
    // std::string rjstr = Json::class2jsonstring(j);
    // // std::cout << lstr << std::endl;
    // std::cout << rjstr << std::endl;

    std::vector<RealTimeDataItem*>plist;
    RealTimeData rt;
    rt.to_all(plist);
    j.values = plist;
    std::cout << Json::class2jsonstring(j) << std::endl;
    

}
